package cn.easy.api;

import cn.easy.pojo.Device;
import cn.easy.pojo.User;

import java.util.List;

public interface DeviceService {
    //新增设备 需要验证身份
    void insertDevice (Device device,String userKey)  throws Exception;
    //删除设备 需要验证身份
    void deleteDevice(int deviceId,String userKey) throws Exception;
    //更新设备 需要验证身份
    void updateDevice(Device device,String userKey) throws Exception;
    //查看一个用户名下所有公开的设备
    List<Device> searchUserPublicDevice(int userId) throws Exception;
    //查看一个用户名下 所有的设备 包括私有的，需要验证身份
    List<Device> searchUserAllDevice(String userKey) throws Exception;

    /**
     * 获取用户名下一台设备的详细信息，如果是私有设备需要雁阵userKey
     * @param userKey
     * @return
     * @throws Exception
     */
    Device searchOneDevice(int deviceId,String userKey) throws Exception;

    /**
     * 通过设备的Key去找到用户
     * @param deviceKey
     * @return
     * @throws Exception
     */
    User getUserByDeviceKey(String deviceKey) throws Exception;
}
